/*!
 * \file GapStateIdle.h
 * \brief State where connection between MGW and SGW is being established
 */

#ifndef SGW_GAP_STATE_IDLE_H
#define SGW_GAP_STATE_IDLE_H

#include "GapStateBase.h"
#include "GapGenerator.h"

namespace tsc
{
namespace sgw
{

/**
 * Initial state of GapGenerator.
 * Connection with MGW is being established
 */
class GapStateIdle : public GapStateBase
{
public:

	static GapStateIdle* instance();

protected:

    virtual void handleEventGapConnectionInd(
                GapGenerator* gapGen,
                GapEventConnectionInd* event,
                EventData*& eventData);

	virtual ~GapStateIdle();

private:
	GapStateIdle();

};

} // namespace sgw
} // namespace tsc

#endif // SGW_GAP_STATE_IDLE_H
